On-demand purchasing and delivery ecosystem

ABSTRACT

An on-demand ecosystem (ODE) computing device for integrating on-demand delivery services with purchase transactions is provided. The ODE computing device receives item data from a registered merchant, and receives availability data from at least one registered carrier. The ODE computing device further provides a searchable interface that enables a user to search for item data from the registered merchant, and receives a selected item from the user via the searchable interface. The selected item is offered for sale by the registered merchant and includes a selected pick-up location. The selected item is to be delivered to the user from the selected pick-up location. The ODE computing device also allows either the registered merchant or the user to select one of the at least one registered carriers, and processes a payment transaction for the selected item including an item price and a delivery fee.

BACKGROUND

This disclosure relates generally to on-demand services and, morespecifically, to network-based systems and methods for delivery servicestied to purchase transactions via an on-demand ecosystem.

On-demand services are increasingly desirable by consumers, particularlywhen it comes to obtaining an item as soon as it is purchased. In a bestcase scenario, a consumer would be able to find the exact item they wantat a nearby merchant, purchase it, and take it with them immediatelyafter purchasing. Additionally, this best case scenario assumes theconsumer would also have the time and transportation means to get to andfrom the merchant, as well as to transport the item after purchase.However, purchasing an item and obtaining the item immediately is notalways possible. For instance, if a consumer wants a specific item rightaway (e.g., same day), they may be able to find local merchants thathave the item in stock (such as by searching merchant inventory onlineor by calling the merchant) and would need to go pick up the itemthemselves. If the item is relatively large (such as a piece offurniture), the consumer may need to rent a truck, or borrow one from afriend or family member, etc. in order to transport the item. As analternative, the consumer may find the item at an online merchant and beforced to pay an expensive fee for same-day shipping. In some cases,same-day shipping may not even be available with some merchants, so aconsumer would be forced wait longer for next-day or 2-day shipping,likely still with an expensive shipping fee. Accordingly, an on-demandecosystem that connects consumers, merchants, and delivery carriers isneeded where delivery services (especially same-day, relativelyshort-distance deliveries) are integrated as part of the item purchasetransaction.

BRIEF DESCRIPTION OF THE DISCLOSURE

In one aspect, an on-demand ecosystem computing device is provided. Theon-demand ecosystem computing device includes a processor incommunication with a memory. The processor programmed to receive itemdata from a registered merchant that includes one or more pick-uplocations, receive availability data from at least one registeredcarrier, and to display a searchable interface to a user that enablesthe user to search for item data from the registered merchant. Theprocessor is further programmed to receive a selected item from the uservia the searchable interface, wherein the selected item is offered forsale by the registered merchant and includes a selected pick-up locationand wherein the selected item is to be delivered to the user from theselected pick-up location, and determine whether the registered merchanthas selected to deliver the selected item to the user. When theregistered merchant has selected to deliver the selected item, theprocessor is programmed to provide the availability data from the atleast one registered carrier to the registered merchant and allow theregistered merchant to select one of the at least one registeredcarriers. When the registered merchant has not selected to deliver theselected item, the processor is programmed to provide the availabilitydata from the at least one registered carrier to the user and allow theuser to select one of the at least one registered carriers. Theprocessor is also programmed to process a payment transaction for theselected item that includes an item price and a delivery fee.

In another aspect, a method for providing an on-demand ecosystem isprovided. The method is performed using an on-demand ecosystem computingdevice including a processor in communication with a memory. The methodincludes receiving item data from a registered merchant that includesone or more pick-up locations, receiving availability data from at leastone registered carrier, and displaying a searchable interface to a userthat enables the user to search for item data from the registeredmerchant. The method further includes receiving a selected item from theuser via the searchable interface, wherein the selected item is offeredfor sale by the registered merchant and includes a selected pick-uplocation and wherein the selected item is to be delivered to the userfrom the selected pick-up location, and determining whether theregistered merchant has selected to deliver the selected item to theuser. When the registered merchant has selected to deliver the selecteditem, the method includes providing the availability data from the atleast one registered carrier to the registered merchant and allowing theregistered merchant to select one of the at least one registeredcarriers. When the registered merchant has not selected to deliver theselected item, the method includes providing the availability data fromthe at least one registered carrier to the user and allowing the user toselect one of the at least one registered carriers. The method alsoincludes processing a payment transaction for the selected item thatincludes an item price and a delivery fee.

In yet another aspect, a non-transitory computer-readable storage mediumhaving computer-executable instructions embodied thereon is provided.When executed by an on-demand ecosystem (ODE) computing device includingat least one processor coupled to a memory, the computer-executableinstructions cause the ODE computing device to receive item data from aregistered merchant that includes one or more pick-up locations, receiveavailability data from at least one registered carrier, and display asearchable interface to a user that enables the user to search for itemdata from the registered merchant. The computer-executable instructionsfurther cause the ODE computing device to receive a selected item fromthe user via the searchable interface, wherein the selected item isoffered for sale by the registered merchant and includes a selectedpick-up location and wherein the selected item is to be delivered to theuser from the selected pick-up location, and determine whether theregistered merchant has selected to deliver the selected item to theuser. When the registered merchant has selected to deliver the selecteditem, the computer-executable instructions cause the ODE computingdevice to provide the availability data from the at least one registeredcarrier to the registered merchant and allow the registered merchant toselect one of the at least one registered carriers. When the registeredmerchant has not selected to deliver the selected item, thecomputer-executable instructions cause the ODE computing device toprovide the availability data from the at least one registered carrierto the user and allow the user to select one of the at least oneregistered carriers. The computer-executable instructions also cause theODE computing device to process a payment transaction for the selecteditem that includes an item price and a delivery fee.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1-7 show example embodiments of the methods and systems describedherein.

FIG. 1 is an example multi-party payment card processing system that maybe used to provide data to the system described herein.

FIG. 2 is an example of an on-demand (OD) system including an on-demandecosystem (ODE) computing device.

FIG. 3 is an example flow diagram illustrating the flow of data betweenvarious components of the OD system shown in FIG. 2.

FIG. 4 illustrates an example configuration of a remote device for usein the system shown in FIG. 2.

FIG. 5 illustrates an example configuration of a server system for usein the system shown in FIG. 2.

FIG. 6 is a flowchart of an example process for providing an on-demandecosystem using the system shown in FIG. 2.

FIG. 7 is a diagram of components of an example computing device thatmay be used in the OD system shown in FIG. 2.

Like numbers in the Figures indicates the same or functionally similarcomponents. Although specific features of various embodiments may beshown in some figures and not in others, this is for convenience only.Any feature of any figure may be referenced and/or claimed incombination with any feature of any other figure.

DETAILED DESCRIPTION OF THE DISCLOSURE

The embodiments described herein include an on-demand (OD) system, anon-demand ecosystem (ODE) computing device, and methods for providing anon-demand ecosystem that ties delivery services to the purchase of anitem. In the exemplary embodiment, an on-demand ecosystem includes amerchant (e.g., a supplier or seller), a user (e.g., a consumer orbuyer), and a carrier who will deliver an item or product to the user.Merchants and carriers enroll or register themselves with the system(e.g., with the ODE computing device). Registered merchants provide thesystem with item data for items being offered for sale, includingpick-up locations at which each item is located. Registered carriersprovide the system with availability data, including days, times, andgeographic areas in which they are available to pick-up items and makedeliveries. Users can browse or search items from registered merchantsvia an interface and select an item to purchase. The system allows amerchant or a user to select and contract with the carrier to deliverthe selected item to the user. Item delivery is integrated into thepurchase transaction, such that payment for delivery is handled by thesystem at the time of purchase of the item. Because delivery carriercontracting is handled at the time of the purchase, the purchase mayonly be completed if a carrier has been selected and contracted with atan agreed upon price. However, there is currently no system capable ofproviding a purchasing experience that includes delivery servicedependent items where delivery services are integrated into the paymenttransactions, particularly in the case of same day, relativelyshort-distance deliveries. The systems and methods described hereinresolve this deficiency.

In the example embodiment, the OD system includes an on-demand ecosystem(ODE) computing device that includes and/or is in communication with amerchant computing device, a carrier (e.g., delivery carrier) computingdevice, a user (e.g., a consumer) computing device, and a paymentnetwork. The ODE computing device is configured to (i) receive item datafrom a registered merchant, (ii) receive availability data from aregistered carrier, (iii) display a searchable interface to a user thatenables the user to search for item data, (iv) receive a selected itemfrom the user via the searchable interface, wherein the selected item isoffered for sale by the registered merchant and includes a selectedpick-up location and is to be delivered to the user from the selectedpick-up location, (v) determine whether the registered merchant hasselected to deliver the selected item to the user, (vi) provide theavailability data from the registered carrier to either the registeredmerchant or the user and allow either the registered merchant or theuser to select a registered carrier, and (vii) process a paymenttransaction for the selected item that includes an item price and adelivery fee. The ODE computing device is a specifically configuredcomputing device that is capable of functioning as described herein,including a dedicated computing device associated solely with the ODsystem. The ODE computing device includes a processor in communicationwith a memory.

The OD system further includes a database in wired and/or wirelesscommunication with the ODE computing device. In some embodiments, thedatabase is a centralized database that is integral to the ODE computingdevice, or in alternative embodiments the database is a separatecomponent and external to the ODE computing device. The database isaccessible to the ODE computing device and is configured to store and/orotherwise maintain a variety of information, as described furtherherein. For example, the database may store merchant item data, carrieravailability data, verification rules, carrier selection rules, paymentprocessing rules and/or any other information. The database isconfigured to store data to more efficiently provide on-demand carrieravailability data to enable carrier selection and complete the itempurchase process. Subsequently, based on the most recentlyselected/contracted carrier, the carrier availability may be updated andre-cached to the database.

According to one or more example embodiments, the on-demand ecosystemcomputing device enables merchants and carriers to enroll or registerwith the system. Registration may include creation of carrier andmerchant profiles. Carrier profiles may include carrier-related data,such as name, address, locations, delivery type(s) (e.g., small item orlarge item), delivery vehicle type(s) (e.g., car, truck), deliveryvehicle identifier(s) (e.g., make, model, color, license plate numbers),delivery vehicle GPS identifier(s), delivery vehicle driveridentifier(s) (e.g., driver names, license numbers, mobile devicecontact information such as phone numbers, photographs, etc.), andcontact information. Carrier-related data included in the profile of aregistered carrier may be displayed to a user or merchant along withcarrier availability data when carrier selection takes place, and/or maybe included as part of availability data provided by the carrier.Merchant profiles may include various merchant-related data, such asname, address, locations, item type(s) (e.g., categories of productsoffered for sale), and contact information. Merchant-related dataincluded in the profile of a registered merchant may be displayed to auser or merchant along with item data when a user searches or browsesvia the searchable interface, and/or may be included as part of itemdata provided by the merchant to aid the user in item selection.

In some embodiments, merchant and carrier registration may furtherinclude a verification process. For instance, the ODE computing devicemay verify the legitimacy of the merchant's or carrier's business.Verification may include business address checks and location checks.Additionally or alternatively, verification may include comparingmerchant-submitted data with merchant data in, for example, the BetterBusiness Bureau data warehouse, or other data warehouse to see if themerchant is a valid merchant. Verification may also include deliverydriver background checks and driving record checks. Accordingly, onlymerchants and carriers that pass the verification process will beregistered by the ODE computing device and have their respective itemsand delivery services offered via the OD system. By using the OD system,users can have increased confidence in the goods and services beingprovided because registered carriers and merchants have passed theverification process.

In some embodiments, users (e.g., consumers/buyers) may also be enabledto register with the ODE computing device. In these embodiments,registered users may create a user profile and input identifying data(such as name, address, etc.) and payment data (such as card/accountinformation) that will be saved in the database associated with the ODEcomputing device and used for payment transactions handled by the ODEcomputing device. In these embodiments, registered users may receivediscounts, coupons, rebates, rewards, reward points, or other incentivesfor item purchases and deliveries made via the OD system. In otherembodiments, a user may prefer not to register with ODE computingdevice, and may still be able to utilize the OD system for item purchaseand delivery (e.g., as a ‘guest’ user).

In the example embodiment, the ODE computing device is configured toreceive item data from a registered merchant. Item data generallyincludes a listing of items offered for sale by the merchant, as well asthe physical locations at which each item is available for pick-up. Itemdata may further include details about each item, such as an item name,an image of the item, a description of the item, an item price, and anitem identifier (e.g., a stock keeping unit (SKU) number, bar code,catalog number, etc.). In some embodiments, the item price may be anestimated item price, such as when the merchant prefers to select thedelivery carrier and will include the delivery fee in the item price.

The ODE computing device is also configured to receive availability datafrom a registered carrier. In providing availability data, the carriermay provide a carrier identifier (e.g., name, address, locations),available delivery days, available delivery times, available deliveryvicinity (e.g., geographic locations and/or boundaries, cities, towns,counties, neighborhoods, streets, etc.), minimum and/or maximum tripdistance (e.g., distance from pick-up location to delivery location), adelivery fee or fee range, a delivery vehicle type (e.g., compact car,mid-size car, small truck (e.g., Subaru Brat, Ford Ranger), large truck(e.g., Ford F150, F250, F350), a delivery vehicle identifier (make,model, color, license plate number), a delivery vehicle GPS identifier,and a delivery vehicle driver identifier (e.g., driver name, driverlicense number, photograph, mobile device contact information such asphone number).

The ODE computing device is then configured to display a searchableinterface to a user that enables the user to search (or browse) for itemdata from the registered merchant. When a user wishes to purchase anitem, the user may search or browse the searchable interface to viewitems offered for sale by any or all of the registered merchants. Theuser may search or browse, for example, by merchant, item type/category,item name, item price, etc. Various item filtering and/or sortingcriteria may be provided to the user via the searchable interface.

In the example embodiment, the ODE computing device is configured toreceive a selected item from the user via the searchable interface. Theselected item is an item being offered for sale by a registeredmerchant, includes a selected pick-up location, and is to be deliveredto the user from the selected pick-up location. Prior to processing apayment transaction for the selected item, a registered carrier will becontracted (by either the merchant or the user, as discussed in furtherdetail below) to deliver the selected item based on availability dataprovided to the ODE computing device by the carrier.

In the example embodiment, the ODE computing device is then configuredto determine whether the registered merchant has selected to deliver theselected item to the user. Depending on the embodiment, either themerchant selling the selected item or the user will select a carrier todeliver the item. In some embodiments, when registering with the ODEcomputing device, a registered merchant may indicate that they willalways, sometimes, or never select a delivery carrier for each itemselected for purchase by a user. For instance, a merchant may indicatethat they will select a deliver carrier for smaller items but not forlarger items. As another example, a merchant may indicate other itemcriteria (e.g., item price, pick-up location) for which they will orwill not select a carrier. In other embodiments, the merchant may notmake any indication regarding carrier selection during registration withthe ODE computing device. In some embodiments, a merchant may prefer todecide whether or not to select a carrier on a case-by-case basis. Forexample, when a selected item is received, the ODE computing device mayquery the merchant regarding whether they will select a carrier for thatparticular item. In embodiments when the merchant has selected todeliver the selected item, the ODE computing device provides theavailability data from the registered carriers to the merchant andallows the merchant to select one of the carriers. Alternatively, inembodiments when the registered merchant has not selected to deliver theselected item, the ODE computing device provides the availability datafrom the registered carriers to the user and allows the user to selectone of the registered carriers. In some embodiments, the ODE computingdevice may filter carriers according to availability data prior toproviding the availability data to a merchant or user for carrierselection. For instance, if a user selects an item for purchase anddelivery on a Saturday, the ODE computing device may not provideavailability data for carriers that have indicated they do not deliveron Saturdays or weekends. Therefore only carriers with availability datathat is applicable to delivering the selected item at the relevant day,time, location, etc. will be displayed to the merchant or user forcarrier selection.

In some embodiments, subsequent to receiving a carrier selection from amerchant or user, the ODE computing device may query the selectedcarrier to accept or decline delivery of the selected item from thepick-up location to the user. In these embodiments, if the initiallyselected carrier declines to deliver the selected item, the ODEcomputing device will allow a different one of the registered carriersto be selected by the merchant or user. Once a registered carrier hasbeen selected (and has been accepted or has not been declined, accordingto the embodiment), the ODE computing device is configured to transmit adelivery task to the selected carrier, wherein the delivery taskincludes at least the selected pick-up location, a selected itemidentifier, and a delivery location. In some embodiments, the ODEcomputing device will further update the availability data of theselected carrier based on the delivery task transmitted to the selectedcarrier. That is, availability data of the selected carrier will beupdated to omit an allotted time during which the carrier has alreadybeen contracted to deliver a selected item. In some embodiments, the ODEcomputing device may also transmit delivery data to the user, such thatthe user may know when to expect delivery of the selected item, as wellas whom to expect to deliver the selected item. Delivery datatransmitted to the user may include a carrier identifier, an estimateddelivery time, an estimated delivery time range, a delivery vehicletype, a delivery vehicle identifier, a GPS identifier, and a deliveryvehicle driver identifier. Delivery data may include carrieravailability data, carrier-related data from the carrier's registrationprofile, and/or additional data.

In the example embodiment, the ODE computing device is furtherconfigured to process a payment transaction for the selected item thatincludes an item price and a delivery fee. In some embodiments, prior toprocessing the payment transaction, the ODE computing device may beconfigured to receive a delivery confirmation for the selected item. Adelivery confirmation may be received by the ODE computing device fromthe selected carrier, the user, or both. In some embodiments, processingthe payment transaction may be dependent upon receiving a deliveryconfirmation. That is, if a delivery confirmation is not received, thepayment transaction for the item price and delivery fee will not beprocessed. For instance, the ODE computing device may receive anauthorization request message (such as ISO® 8583 compliant messages andISO® 20022 compliant messages) from the merchant to obtain payment forthe selected item (and additionally, in some embodiments, from thecarrier to obtain payment for delivery), however, the ODE computingdevice may not relay the authorization request message to the paymentnetwork until a delivery confirmation has been received. Once thedelivery confirmation is received at the ODE computing device, theauthorization request message(s) are forwarded to the payment network toprocess and complete the payment transaction for both the item price andthe delivery fee. According to one or more example embodiments, the ODEcomputing device may be in communication with the payment network or theODE computing device may be integral to the payment network. Inembodiments where the ODE computing device is integral to the paymentnetwork, payment authorization request messages received from a merchantor carrier may be processed immediately upon selection of a registeredcarrier and transmittal of a delivery task, or alternatively may beprocessed in response to a delivery confirmation being received at theODE computing device for the selected item.

The ODE computing device is configured to receive payment data from theuser to pay for the selected item and delivery fee. In embodiments wherethe registered merchant has selected to deliver the selected item, thepayment transaction is processed by applying both the item price and thedelivery fee to the registered merchant. Alternatively, in embodimentswhere the registered merchant has not selected to deliver the selecteditem, the payment transaction is processed by applying the item price tothe registered merchant and applying the delivery fee to the selectedcarrier.

The OD system described herein, including the ODE computing device,provides an on-demand ecosystem through which delivery services are tiedto purchase transactions, and both delivery carrier contracting and itempurchase are completed at the time of payment.

The methods and systems described herein may be implemented usingcomputer programming or engineering techniques including computersoftware, firmware, hardware, or any combination or subset therefor. Atleast one of the technical problems addressed by this system includes:(i) lack of on-demand delivery services particularly for same day,relatively short distance deliveries; (ii) lack of a purchasingexperience that incorporates on-demand delivery contracting with itempurchase; (iii) merchants, such as smaller merchants, that do not havetheir own delivery services; (iv) lack of real-time item tracking frompick-up to transit to delivery; (v) lack of user/consumer confidencewhen merchants and carriers are not registered and/or verified; and (vi)lack of a centralized database for storing on-demand delivery carrieravailability data.

The technical effect of the systems and methods described herein isachieved by performing at least one of the following steps: (i)receiving item data from a registered merchant that includes one or morepick-up locations; (ii) receiving availability data from at least oneregistered carrier; (iii) displaying a searchable interface to a userthat enables the user to search for item data from the registeredmerchant; (iv) receiving a selected item from the user via thesearchable interface, wherein the selected item is offered for sale bythe registered merchant and includes a selected pick-up location,wherein the selected item is to be delivered to the user from theselected pick-up location; (v) determining whether the registeredmerchant has selected to deliver the selected item to the user, wherein:when the registered merchant has selected to deliver the selected item,providing the availability data from the at least one registered carrierto the registered merchant and allowing the registered merchant toselect one of the at least one registered carriers, and when theregistered merchant has not selected to deliver the selected item,providing the availability data from the at least one registered carrierto the user and allowing the user to select one of the at least oneregistered carriers; and (vi) processing a payment transaction for theselected item that includes an item price and a delivery fee.

The resulting technical effect achieved by the systems and methodsdescribed herein is at least one of: (i) improved on-demand deliveryservices, particularly for same day, relatively short distances; (ii)improved on-demand purchase experiences because on-demand deliverycarrier contracting is integrated into the item purchase transaction;(iii) greater selection of delivery options for users and merchants,especially for smaller merchants that do not have their own deliveryservice; (iv) more efficient delivery options for merchants and usersfor arranging purchased item delivery; (v) convenient, real-time itemlocation tracking from pick-up to transit to delivery; (vi) increaseduser/consumer confidence for making item purchases fromregistered/verified merchants and having items delivered fromregistered/verified carriers; and (vii) improved storage for on-demanddelivery carrier availability data.

In one embodiment, a computer program is provided, and the program isembodied on a computer-readable medium. In an example embodiment, the ODsystem is executed on a single computer system, without requiring aconnection to a sever computer. In a further example embodiment, thesystem is being run in a Windows® environment (Windows is a registeredtrademark of Microsoft Corporation, Redmond, Wash.). In yet anotherembodiment, the system is run on a mainframe environment and a UNIX®server environment (UNIX is a registered trademark of AT&T located inNew York, N.Y.). The application is flexible and designed to run invarious different environments without compromising any majorfunctionality. In some embodiments, the OD system includes multiplecomponents distributed among a plurality of computing devices. One ormore components may be in the form of computer-executable instructionsembodied in a computer-readable medium. The systems and processes arenot limited to the specific embodiments described herein. In addition,components of each system and each process can be practiced independentand separate from other components and processes described herein. Eachcomponent and process can also be used in combination with otherassembly packages and processes.

The following detailed description illustrates embodiments of thedisclosure by way of example and not by way of limitation. It iscontemplated that the disclosure has general application to providing anon-demand ecosystem in industrial, commercial, and residentialapplications.

As used herein, an element or step recited in the singular and precededwith the word “a” or “an” should be understood as not excluding pluralelements or steps, unless such exclusion is explicitly recited.Furthermore, references to “example embodiment” or “one embodiment” ofthe present disclosure are not intended to be interpreted as excludingthe existence of additional embodiments that also incorporate therecited features.

FIG. 1 is a schematic diagram illustrating an example multi-partypayment card system 100 for processing payment card transactions. Thepresent disclosure relates to payment card system 100, such as a creditcard payment system using the Mastercard® payment card system paymentnetwork 108 (also referred to as an “interchange” or “interchangenetwork”). Mastercard® payment card system payment network 108 is aproprietary communications standard promulgated by MastercardInternational Incorporated® for the exchange of financial transactiondata between financial institutions that are members of MastercardInternational Incorporated®. (Mastercard is a registered trademark ofMastercard International Incorporated located in Purchase, N.Y.).

In payment card system 100, a financial institution such as an issuer110 issues a payment card for an account, such as a credit card accountor a debit card account, to a cardholder 102, who uses the payment cardto tender payment for a purchase from a merchant 104. To accept paymentwith the payment card, merchant 104 must normally establish an accountwith a financial institution that is part of the financial paymentsystem. This financial institution is usually called the “merchant bank”or the “acquiring bank” or “acquirer bank” or simply “acquirer”. When acardholder 102 tenders payment for a purchase with a payment card (alsoknown as a financial transaction card), merchant 104 requestsauthorization from acquirer 106 for the amount of the purchase. Such arequest is referred to herein as an authorization request message (e.g.,ISO® 8583 compliant messages and ISO® 20022 compliant messages). Therequest may be performed over the telephone, but is usually performedthrough the use of a point-of-interaction terminal, also referred toherein as a point-of-sale device, which reads the cardholder's accountinformation from the magnetic stripe on the payment card andcommunicates electronically with the transaction processing computers ofacquirer 106. Alternatively, acquirer 106 may authorize a third party toperform transaction processing on its behalf. In this case, thepoint-of-interaction terminal will be configured to communicate with thethird party. Such a third party is usually called a “merchant processor”or an “acquiring processor.”

For card-not-present (CNP) transactions, cardholder 102 provides paymentinformation or billing data associated with the payment cardelectronically to merchant 104. The payment information received bymerchant 104 is stored and transmitted to acquirer 106 and/or paymentnetwork 108 as part of an authorization request message. In someembodiments, merchant 104 transmits a plurality of authorization requestmessages together as a “batch” file to acquirer 106 and/or paymentnetwork 108.

Using payment card system payment network 108, the computers of acquirer106 or the merchant processor will communicate with the computers ofissuer 110, to determine whether the cardholder's account 112 is in goodstanding and whether the purchase is covered by the cardholder'savailable credit line or account balance. Based on these determinations,the request for authorization will be declined or accepted. If therequest is accepted, an authorization code is issued to merchant 104.

When a request for authorization is accepted, the available credit lineor available balance of cardholder's account 112 is decreased. Normally,a charge is not posted immediately to a cardholder's account becausebankcard associations, such as Mastercard International Incorporated®,have promulgated rules that do not allow a merchant to charge, or“capture,” a transaction until goods are shipped or services arerendered. When a merchant ships or delivers the goods or services,merchant 104 captures the transaction by, for example, appropriate dataentry procedures on the point-of-interaction terminal. If a cardholdercancels a transaction before it is captured, a “void” is generated. If acardholder returns goods after the transaction has been captured, a“credit” is generated.

For debit card transactions, when a request for authorization isapproved by the issuer, cardholder's account 112 is decreased. Normally,a charge is posted immediately to cardholder's account 112. The bankcardassociation then transmits the approval to the acquiring processor fordistribution of goods/services, information, or cash in the case of anATM.

After a transaction is captured, the transaction is settled betweenmerchant 104, acquirer 106, and issuer 110. Settlement refers to thetransfer of financial data or funds between the merchant's account,acquirer 106, and issuer 110 related to the transaction. Usually,transactions are captured and accumulated into a “batch,” which issettled as a group.

FIG. 2 is a block diagram of an example of an on-demand (OD) system 200including an on-demand ecosystem (ODE) computing device 202. ODEcomputing device 202 includes at least one processor in communicationwith a memory. ODE computing device 202 is in communication with adatabase (memory) 204, merchant computing device(s) 206, carriercomputing device(s) 208, user computing device(s) 210, andissuer/financial institution 214 via payment network 212. Paymentnetwork 212 may be similar to payment network 108 as shown in FIG. 1.Payment network 212 includes at least a payment processor for processingpayment transactions. Payment network 212 may further include an issuercomputing device (where the issuer is a bank or financial institutionassociated with a user (e.g., cardholder) and issues paymentaccounts/cards to the user), an acquirer computing device (where theacquirer is a bank or financial institution associated with a merchant,e.g., a merchant bank), a merchant computing device, and auser/cardholder payment card and/or computing device. Database 204contains information on a variety of matters, including: item data,availability data, registered merchant listings, registered carrierlistings, carrier selection rules, verification modules and/or any otherinformation. In some embodiments, database 204 is stored on ODEcomputing device 202. In alternative embodiments, database 204 is storedremotely from ODE computing device 202 and may be non-centralized. ODsystem 200 is communicatively coupled to system 100 (shown in FIG. 1) toprovide data, such as transaction and account data, to OD system 200.

In the example embodiment, payment network 212 is configured toreceive/transmit transaction data from/to ODE computing device 202 tofacilitate processing of payment transactions initiated via OD system200. In some embodiments, ODE system 202 receives payment data from user210. To complete a payment transaction, ODE computing device maytransmit an authorization request message from merchant 206 to paymentnetwork 212 and issuer/financial institution 214. Upon approval,issuer/financial institution will transmit the appropriate funds viapayment network 212 to ODE computing device 202 to apply payment for anitem price and a delivery fee from payment account 216 that isassociated with user 210. Depending on the embodiment, ODE computingdevice 202 may apply payment for both the item price and the deliveryfee to merchant 206 (e.g., when merchant 206 selects a carrier 208), orODE computing device 202 may apply payment for the item price tomerchant 206 and apply payment for the delivery fee directly to carrier208 (e.g., when user 210 selects a carrier 208).

In the example embodiment, OD system 200 further includes a plurality ofclient subsystems, also referred to as client/user systems such asmerchant 206 computing device, carrier 208 computing device, and user(e.g., consumer/buyer) computing device 210. As described in greaterdetail herein, merchant 206 and carrier 208 computing devices may beassociated with ODE computing device 202 by registering with ODEcomputing device 202. Computing devices 206, 208, 210 are computersincluding a web browser, such that ODE computing device 202 isaccessible to user computing devices 206, 208, 210 using the Internet.Computing devices 206, 208, 210 may be any device capable ofinterconnecting to the Internet including a mobile computing device,such as a laptop or desktop computer, a web-based phone (e.g., a“smartphone”), a personal digital assistant (PDA), a tablet or phablet,a fitness wearable device, a smart refrigerator or other web-connectableappliance, a “smart watch” or other wearable device, or otherweb-connectable equipment. Although one merchant 206, one carrier 208,and one user 210 computing device is shown in FIG. 2, it should beunderstood that OD system 200 may include any number of merchants 206,carriers 208 and/or user 210 computing devices.

In one embodiment, ODE computing device 202 is configured to communicatewith a merchant 206, carrier 208, or user 210 computing device.Computing devices 206, 208, 2010 are configured to display an app, forexample, at a user interface (not shown) of computing device 206, 208,210. Merchants 206 and/or carriers 208 may access the app toregister/enroll with the ODE computing device 202. In some embodiments,merchants 206 and carriers 208 are automatically verified by ODEcomputing device 202. In certain embodiments, the merchants 206 andcarriers 208 provide merchant-related data and carrier-related data,respectively, to ODE computing device 202 to facilitate generation ofmerchant 206 and carrier 208 profiles, which are stored in database 204.In some embodiments, the app providing access to the ODE computingdevice may have inter-app integration functionality, such that theon-demand ecosystem services of the app may be integrated with, forexample, budgeting, invoicing, or inventory tracking services of anotherapplication.

Database 204 is communicatively coupled to ODE computing device 202. Inother embodiments, database 204 is integrated with ODE computing device202 or payment network 212 (e.g., a payment processor). Database 204 isconfigured to receive, store, and transmit data for the ODE computingdevice 202. In particular, database 204 may store item data,availability data, registered merchant listings, registered carrierlistings, carrier selection rules, verification modules and/or any otherinformation.

In the illustrated embodiment, ODE computing device 202 is incommunication with a payment network 212. Payment network 212 isconfigured to process financial transactions thereover. Payment network212 is in communication with a plurality of issuers/financialinstitutions 214 (e.g., banks), although only one issuer 214 is shownfor clarity. Financial institution 214 maintains one or more paymentaccounts 216 associated with a user 210 (e.g., a consumer or buyer),such as a credit card account, debit account, or prepaid account. Insome embodiments, ODE computing device 202 is integral to paymentnetwork 212 and in direct communication with financial institution 214.

FIG. 3 is an example flow diagram illustrating the flow of data betweenvarious components of the OD system 200 (shown in FIG. 2). Inparticular, FIG. 3 depicts the data flow between ODE computing device202, user 210, registered merchant 306 (similar to merchant 206 shown inFIG. 2), and registered carrier 308 (similar to carrier 208 shown inFIG. 2). Prior to the flow of data depicted in FIG. 3, merchant 206 andcarrier 208 have registered with (and in some embodiments, been verifiedby) ODE computing device 202. In other embodiments, OD system 200 mayprovide additional, fewer, or alternative data and data flow, includingthose described elsewhere herein.

In the example embodiment, ODE computing device 202 receivesavailability data from registered carrier 308 (step 1). Availabilitydata submitted by carrier 308 and received by ODE computing device 202includes at least one of a carrier identifier (e.g., name, address,locations), available delivery days, available delivery times, availabledelivery vicinity (e.g., geographic locations and/or boundaries, cities,towns, counties, neighborhoods, streets, etc.), minimum and/or maximumtrip distance (e.g., distance from pick-up location to deliverylocation), a delivery fee or fee range, a delivery vehicle type (e.g.,compact car, mid-size car, small truck (e.g., Subaru Brat, Ford Ranger),large truck (e.g., Ford F150, F250, F350), a delivery vehicle identifier(make, model, color, license plate number), a delivery vehicle GPSidentifier, and a delivery vehicle driver identifier (e.g., driver name,driver license number, photograph, mobile device contact informationsuch as phone number).

ODE computing device receives item data from registered merchant 306(step 2). Item data submitted by merchant 306 and received by ODEcomputing device 202 includes at least one item offered for sale by themerchant, as well as the physical location(s) at which the item isavailable for pick-up. Item data may further include details about eachitem, such as an item name, an image of the item, a description of theitem, an item price, and an item identifier (e.g., a stock keeping unit(SKU) number, bar code, catalog number, etc.).

The ODE computing device 202 then provides/displays a searchableinterface to user 210 that enables user 210 to search (or browse) foritem data from the registered merchant 306 (step 3). User 210 may searchor browse the searchable interface to view items offered for sale by anyor all of the registered merchants 306. The user 210 may search orbrowse, for example, by merchant, item type/category, item name, itemprice, etc.

ODE computing device 202 receives a selected item from the user via thesearchable interface (step 4). The selected item is an item beingoffered for sale by a registered merchant 306, includes a selectedpick-up location, and is to be delivered to the user from the selectedpick-up location. Prior to processing a payment transaction (steps 7 aand 7 b) for the selected item, a registered carrier 308 will becontracted (by either the merchant 306 or the user 210, steps 6 a and 6b) to deliver the selected item based on availability data provided tothe ODE computing device 202 by the carrier 308 at step 1.

ODE computing device 202 then determines whether the registered merchant306 has selected to deliver the selected item to the user 210. Dependingon the embodiment, either the merchant 306 or the user 210 will select acarrier to deliver the item (step 6 a or 6 b, respectively). When ODEcomputing device 202 determines that the merchant 306 has selected todeliver the selected item, ODE computing device 202 provides theavailability data from the registered carriers 308 to the merchant 306(step 5 a) and allows the merchant 306 to select one of the carriers 308(step 6 a). Alternatively, when ODE computing device 202 determines thatthe registered merchant 306 has not selected to deliver the selecteditem, the ODE computing device 202 provides the availability data fromthe registered carriers 308 to the user 210 (step 5 b) and allows theuser 210 to select one of the registered carriers 308 (step 6 b). Insome embodiments, the ODE computing device 202 may filter carriers 308according to availability data prior to providing the availability datato a merchant 306 or user 210 (step 5 a or 5 b) for carrier selection(step 6 a or 6 b). In these embodiments, only carriers 308 withavailability data that is applicable to delivering the selected item atthe relevant day, time, location, etc. will be displayed to the merchant306 or user 210 for carrier selection at step 5 a or 5 b, respectively.

In some embodiments, subsequent to receiving a carrier selection from amerchant 306 or user 210 (step 6 a or 6 b), the ODE computing device 202may query the selected carrier 308 (not shown) to accept or declinedelivery of the selected item from the pick-up location to the user 210.In these embodiments, if the initially selected carrier 308 declines todeliver the selected item, the ODE computing device 202 will allow adifferent one of the registered carriers 308 to be selected by themerchant 306 or user 210 (step 6 a or 6 b). In some embodiments, once aregistered carrier 308 has been selected (step 6 a or 6 b), the ODEcomputing device 202 is configured to transmit a delivery task to theselected carrier 308, wherein the delivery task includes at least theselected pick-up location, a selected item identifier, and a deliverylocation. In some embodiments, the ODE computing device 202 will furtherupdate the availability data of the selected carrier 308 based on thedelivery task transmitted to the selected carrier 308. In someembodiments, the ODE computing device 202 may also transmit deliverydata to the user 210, such that the user 210 may know when to expectdelivery of the selected item, as well as whom to expect to deliver theselected item. Delivery data transmitted to the user may include acarrier identifier, an estimated delivery time, an estimated deliverytime range, a delivery vehicle type, a delivery vehicle identifier, aGPS identifier, and a delivery vehicle driver identifier.

Following carrier selection (step 6 a or 6 b), ODE computing device 202processes a payment transaction (steps 7 a and 7 b) for the selecteditem that includes an item price and a delivery fee. In someembodiments, prior to processing the payment transaction, the ODEcomputing device 202 may be configured to receive a deliveryconfirmation for the selected item. A delivery confirmation may bereceived by the ODE computing device 202 from the selected carrier 308,the user 210, or both. In some embodiments, processing the paymenttransaction may be dependent upon receiving a delivery confirmation. Inthese embodiments, if a delivery confirmation is not received, thepayment transaction for the item price and delivery fee will not beprocessed.

In some embodiments, ODE computing device 202 receives payment data fromthe user 210 to pay for the selected item and delivery fee. Inembodiments when the registered merchant 306 has selected to deliver theselected item, the payment transaction is processed by applying both theitem price and the delivery fee to the registered merchant 306 (step 7 aonly). Alternatively, in embodiments when the registered merchant 306has not selected to deliver the selected item, the payment transactionis processed by applying the item price to the registered merchant 306and applying the delivery fee to the selected carrier 308 (both steps 7a and 7 b).

FIG. 4 depicts an exemplary configuration of a remote or clientcomputing device 402, such as merchant 206, carrier 208, and user 210computing devices (shown in FIG. 2). Computing device 402 includes aprocessor 404 for executing instructions. In some embodiments,executable instructions are stored in a memory area 406. Processor 404may include one or more processing units (e.g., in a multi-coreconfiguration). Memory area 406 is any device allowing information suchas executable instructions and/or other data to be stored and retrieved.Memory area 406 may include one or more computer-readable media.

Client computing device 402 also includes at least one media outputcomponent 408 for presenting information to a user 410. Media outputcomponent 408 is any component capable of conveying information to user410. In some embodiments, media output component 408 includes an outputadapter such as a video adapter and/or an audio adapter. An outputadapter is operatively coupled to processor 404 and operativelycoupleable to an output device such as a display device (e.g., a liquidcrystal display (LCD), organic light emitting diode (OLED) display,cathode ray tube (CRT), or “electronic ink” display) or an audio outputdevice (e.g., a speaker or headphones). In some embodiments, mediaoutput component 408 is configured to present an interactive userinterface (e.g., a web browser or client application) to user 410.

In some embodiments, client computing device 402 includes an inputdevice 412 for receiving input from user 410. Input device 412 mayinclude, for example, a keyboard, a pointing device, a mouse, a stylus,a touch sensitive panel (e.g., a touch pad or a touch screen), a camera,a gyroscope, an accelerometer, a position detector, and/or an audioinput device. A single component such as a touch screen may function asboth an output device of media output component 408 and input device412.

Computing device 402 may also include a communication interface 414,which is communicatively coupleable to a remote device such as ODEcomputing device 202 (shown in FIG. 2). Communication interface 414 mayinclude, for example, a wired or wireless network adapter or a wirelessdata transceiver for use with a mobile phone network (e.g., GlobalSystem for Mobile communications (GSM), 3G, 4G, or Bluetooth) or othermobile data network (e.g., Worldwide Interoperability for MicrowaveAccess (WIMAX)).

Stored in memory area 406 are, for example, computer-readableinstructions for providing a user interface to user 410 via media outputcomponent 408 and, optionally, receiving and processing input from inputdevice 412. A user interface may include, among other possibilities, aweb browser and client application. Web browsers enable users 410 todisplay and interact with media and other information typically embeddedon a web page or a website from a web server associated with, forexample, a merchant. A client application allows users 410 to interactwith a server application associated with, for example, ODE computingdevice 202 and/or other components of OD system 200 (shown in FIG. 2).For instance, in some embodiments, client computing device 402 isconfigured as merchant computing device 206 and user 410 may beexemplified as a merchant interacting with ODE computing device 202 viamedia output component 408 and input device 412 to submit item data (seestep 2 in FIG. 3) and select a delivery carrier (see step 6 a in FIG.3). As another example, in some embodiments, client computing device 402is configured as carrier computing device 208 and user 410 may beexemplified as a delivery person interacting with ODE computing device202 via media output component 408 and input device 412 to submitcarrier availability data (see step 1 in FIG. 3), and additionallyreceive a delivery task and submit a delivery confirmation.

FIG. 5 illustrates an example configuration of a server computing device502, such as ODE computing device 202 and payment network 212 (shown inFIG. 2). Server computing device 502 includes a processor 504 forexecuting instructions. Instructions may be stored in a memory area 506,for example. Processor 504 may include one or more processing units(e.g., in a multi-core configuration).

Processor 504 is operatively coupled to a communication interface 508such that server computing device 502 is capable of communicating with aremote device such as computing device 402 shown in FIG. 4 or anotherserver computing device 502. For example, communication interface 508 ofODE computing device 202 may receive various data from merchant 206,carrier 208, and user 210 computing devices via the Internet, asillustrated in FIG. 2. As another example, communication interface 508of payment network 212 may receive authorization requests from ODEcomputing device 202 to complete payment transactions initiated via ODsystem 200.

Processor 504 may also be operatively coupled to a storage device 510.Storage device 510 is any computer-operated hardware suitable forstoring and/or retrieving data. In some embodiments, storage device 510is integrated in server computing device 502. For example, servercomputing device 502 may include one or more hard disk drives as storagedevice 510. In other embodiments, storage device 510 is external toserver computing device 502 and may be accessed by a plurality of servercomputing devices 502. For example, storage device 510 may includemultiple storage units such as hard disks or solid state disks in aredundant array of inexpensive disks (RAID) configuration. Storagedevice 510 may include a storage area network (SAN) and/or a networkattached storage (NAS) system.

In some embodiments, processor 502 is operatively coupled to storagedevice 510 via a storage interface 512. Storage interface 512 is anycomponent capable of providing processor 504 with access to storagedevice 510. Storage interface 512 may include, for example, an AdvancedTechnology Attachment (ATA) adapter, a Serial ATA (SATA) adapter, aSmall Computer System Interface (SCSI) adapter, a RAID controller, a SANadapter, a network adapter, and/or any component providing processor 504with access to storage device 510.

Memory areas 406 (shown in FIG. 4) and 506 may include, but are notlimited to, random access memory (RAM) such as dynamic RAM (DRAM) orstatic RAM (SRAM), read-only memory (ROM), erasable programmableread-only memory (EPROM), electrically erasable programmable read-onlymemory (EEPROM), and non-volatile RAM (NVRAM). The above memory typesare for example only, and are thus not limiting as to the types ofmemory usable for storage of a computer program.

FIG. 6 is a flowchart of a method 600 for providing an on-demandecosystem, such as system 200 (shown in FIG. 2). In the exampleembodiment, method 600 is performed by an ODE computing device, such asODE computing device 202 (shown in FIG. 2). In certain embodiments,method 600 may be at least partially performed by a different computingdevice. In other embodiments, method 600 may include additional, fewer,or alternative actions, including those described elsewhere herein.

Method 600 begins with the ODE computing device receiving 602 item datafrom a registered merchant that includes one or more pick-up locations,and receiving 604 availability data from at least one registeredcarrier. The ODE computing device also provides 606 a searchableinterface to a user that enables the user to search for item data fromthe registered merchant, and subsequently receives 608 a selected itemfrom the user via the searchable interface. The selected item is offeredfor sale by the registered merchant and includes a selected pick-uplocation. The selected item is to be delivered to the user from theselected pick-up location. The ODE computing device then determines 610whether the registered merchant has selected to deliver the selecteditem to the user. When the registered merchant has selected to deliverthe selected item, ODE computing device provides 612 the availabilitydata from the at least one registered carrier to the registered merchantand allows the registered merchant to select one of the at least oneregistered carriers. When the registered merchant has not selected todeliver the selected item, ODE computing device provides 614 theavailability data from the at least one registered carrier to the userand allows the user to select one of the at least one registeredcarriers. The method further includes processing 616 (by the ODEcomputing device) a payment transaction for the selected item thatincludes an item price and a delivery fee.

In some embodiments, method 600 further includes receiving a deliverydecline from the selected carrier. The ODE computing device wouldconsequently allow a different one of the at least one registeredcarriers carrier to be selected (by either the merchant or the user,depending on the embodiment). In some embodiments, method 600 includestransmitting a delivery task to the selected carrier, which notifies thecarrier that they have been selected to pick-up and deliver an item. Thedelivery task may include the selected pick-up location, an identifierfor the selected item, and a delivery location. The delivery task mayalso include a scheduled pick-up time or time range during which theregistered merchant can expect the selected carrier to pick-up theselected item, and a scheduled delivery time or time range during whichthe user can expect the selected carrier to deliver the selected item.Depending on the embodiment, the selected carrier may confirm thescheduled pick-up and/or delivery time(s), or may adjust the scheduledtime(s) in a response to the transmitted delivery task. In otherembodiments, in which the selected carrier does not receive scheduledpick-up and/or delivery time(s) in the transmitted delivery task, theselected carrier may submit scheduled pick-up and/or delivery time(s) tothe ODE computing device in a response to the transmitted delivery task.Accordingly, in some embodiments, method 600 includes updating theavailability data of the selected carrier based on the delivery tasktransmitted to the selected carrier. For instance, in these embodiments,scheduled pick-up and/or delivery time(s) or time range(s) can be usedto update the availability for the selected carrier by removing thosetimes, on that particular day, to prevent double-booking the selectedcarrier on that particular day at those times.

In some embodiments, method 600 includes transmitting delivery data tothe user, such that the user may be informed about when the item will bedelivered and can recognize the carrier upon delivery. Delivery dataincludes at least one of a carrier identifier, an estimated deliverytime or time range (corresponding to the scheduled delivery time), adelivery vehicle type, a delivery vehicle identifier, a GPS identifier,and a delivery vehicle driver identifier. In some embodiments, method600 includes receiving a delivery confirmation for the selected item,where the delivery confirmation may be received from the selectedcarrier, from the user, or both. In some embodiments, method 600includes receiving payment data from the user to be used in processing616 the payment transaction. In some embodiments, the paymenttransaction may be processed by the ODE computing device only after adelivery confirmation has been received by the ODE computing device. Insome embodiments, when the registered merchant has selected to deliverthe selected item, processing 616 the payment transaction includesapplying both the item price and the delivery fee to the registeredmerchant. In other embodiments, when the registered merchant has notselected to deliver the selected item, processing 616 the paymenttransaction includes applying the item price to the registered merchantand applying the delivery fee to the selected carrier.

FIG. 7 is a diagram 700 of components of an example computing device 710that may be used in method 600 shown in FIG. 6. In some embodiments,computing device 710 is similar to ODE computing device 202 (shown inFIG. 2). Computing device 710 includes a database 720 configured tostore various information. Database 720 may be similar to database 204(shown in FIG. 2). Database 720 may be coupled with several separatecomponents within computing device 710, which perform specific tasks. Inthe illustrated embodiment, database 720 is divided into a plurality ofsections and stores, including but not limited to, a registration modulesection 722, an item data section 724 (which may include and/or besimilar to item data received at step 2, shown in FIG. 3), anavailability data section 726 (which may include and/or be similar toavailability data received at step 1, shown in FIG. 3), and a carrierselection rules section 728. Database 720 is interconnected to computingdevice 710 to receive, transmit, and/or update the information asrequired.

In the example embodiment, computing device 710 includes a receivingcomponent 730 configured to receive item data from a registered merchantand availability data from a registered carrier. Computing device 710further comprises a displaying component 740 configured to display asearchable interface to a user that enables the user to search (orbrowse) item data from the registered merchant. Receiving component 730is also configured to receive a selected item from the user via thesearchable interface. The selected item is offered for sale by theregistered merchant and includes a selected pick-up location, and theselected item is to be delivered to the user from the selected pick-uplocation. Computing device 710 further includes a determining component750 configured to determine whether the registered merchant has selectedto deliver the selected item to the user. When the registered merchanthas selected to deliver the selected item, determining component 750 isadditionally configured to provide the availability data from the atleast one registered carrier to the registered merchant and allow theregistered merchant to select one of the at least one registeredcarriers. When the registered merchant has not selected to deliver theselected item, determining component 750 is additionally configured toprovide the availability data from the at least one registered carrierto the user and allow the user to select one of the at least oneregistered carriers. Computing device 710 also comprises a processingcomponent 760 configured to process a payment transaction for theselected item that includes an item price and a delivery fee.

Described herein are computer systems such as a payment processor (suchas a payment network), a remote device (such as a merchant computingdevice, a carrier computing device, and a user computing device) and anODE computing device. As described herein, all such computer systemsinclude a processor and a memory.

Further, any processor in a computer device referred to herein may alsorefer to one or more processors wherein the processor may be in onecomputing device or a plurality of computing devices acting in parallel.Additionally, any memory in a computer device referred to herein mayalso refer to one or more memories wherein the memories may be in onecomputing device or a plurality of computing devices acting in parallel.

The term processor, as used herein, refers to central processing units,microprocessors, microcontrollers, reduced instruction set circuits(RISC), application specific integrated circuits (ASIC), logic circuits,and any other circuit or processor capable of executing the functionsdescribed herein. The above examples are for example only, and are thusnot intended to limit in any way the definition and/or meaning of theterm “processor.”

The term database, as used herein, refers to either a body of data, arelational database management system (RDBMS), or to both. As usedherein, a database may include any collection of data includinghierarchical databases, relational databases, flat file databases,object-relational databases, object oriented databases, and any otherstructured collection of records or data that is stored in a computersystem. The above examples are for example only, and thus are notintended to limit in any way the definition and/or meaning of the termdatabase. Examples of RDBMS's include, but are not limited to including,Oracle® Database, MySQL, IBM® DB2, Microsoft® SQL Server, Sybase®, andPostgreSQL. However, any database may be used that enables the systemsand methods described herein. (Oracle is a registered trademark ofOracle Corporation, Redwood Shores, Calif.; IBM is a registeredtrademark of International Business Machines Corporation, Armonk, N.Y.;Microsoft is a registered trademark of Microsoft Corporation, Redmond,Wash.; and Sybase is a registered trademark of Sybase, Dublin, Calif.)

As used herein, the terms “software” and “firmware” are interchangeable,and include any computer program stored in memory for execution by aprocessor (e.g., 304, 404), including RAM memory, ROM memory, EPROMmemory, EEPROM memory, and non-volatile RAM (NVRAM) memory. The abovememory types are example only, and are thus not limiting as to the typesof memory usable for storage of a computer program.

As used herein, the terms “transaction card,” “financial transactioncard,” and “payment card” refer to any suitable transaction card, suchas a credit card, a debit card, a prepaid card, a charge card, amembership card, a promotional card, a frequent flyer card, anidentification card, a gift card, and/or any other device that may holdpayment account information, such as mobile phones, smartphones,personal digital assistants (PDAs), key fobs, and/or computers. Eachtype of transaction card can be included in payment data received by theODE computing device and used as a method of payment for performing atransaction.

As will be appreciated based on the foregoing specification, theabove-discussed embodiments of the disclosure may be implemented usingcomputer programming or engineering techniques including computersoftware, firmware, hardware or any combination or subset thereof. Anysuch resulting computer program, having computer-readable and/orcomputer-executable instructions, may be embodied or provided within oneor more computer-readable media, thereby making a computer programproduct, i.e., an article of manufacture, according to the discussedembodiments of the disclosure. These computer programs (also known asprograms, software, software applications or code) include machineinstructions for a programmable processor, and can be implemented in ahigh-level procedural and/or object-oriented programming language,and/or in assembly/machine language. As used herein, the terms“machine-readable medium,” “computer-readable medium,” and“computer-readable media” refer to any computer program product,apparatus and/or device (e.g., magnetic discs, optical disks, memory,Programmable Logic Devices (PLDs)) used to provide machine instructionsand/or data to a programmable processor, including a machine-readablemedium that receives machine instructions as a machine-readable signal.The “machine-readable medium,” “computer-readable medium,” and“computer-readable media,” however, do not include transitory signals(i.e., they are “non-transitory”). The term “machine-readable signal”refers to any signal used to provide machine instructions and/or data toa programmable processor.

In addition, although various elements of the ODE computing device aredescribed herein as including general processing and memory devices, itshould be understood that the ODE computing device is a specializedcomputer configured to perform the steps described herein for providingan on-demand ecosystem to integrate on-demand delivery services withinpurchase transactions.

This written description uses examples to disclose the invention,including the best mode, and also to enable any person skilled in theart to practice the invention, including making and using any devices orsystems and performing any incorporated methods. The patentable scope ofthe invention is defined by the claims, and may include other examplesthat occur to those skilled in the art. Such other examples are intendedto be within the scope of the claims if they have structural elementsthat do not differ from the literal language of the claims, or if theyinclude equivalent structural elements with insubstantial differencesfrom the literal languages of the claims.

What is claimed is:
 1. An on-demand ecosystem (ODE) computing deviceincluding a processor in communication with a memory, said processorprogrammed to: receive, via the Internet, item data from a merchantcomputing device of a registered merchant, wherein the item dataincludes one or more pick-up locations; receive, via the Internet,carrier availability data from at least one carrier computing devicecorresponding to at least one registered carrier, the carrieravailability data identifying a local geographic area within which theat least one carrier delivers; store, in a database, the item data andthe carrier availability data; cause to be displayed, via Internetcommunication with an application executing on a user computing device,a searchable interface to a user that enables the user to search thedatabase for item data from the registered merchant; receive, via theInternet from the application executing on the user computing device, aselected item from the user via the searchable interface, wherein theselected item is offered for sale by the registered merchant andincludes a selected pick-up location, wherein the selected item is to bedelivered to the user from the selected pick-up location; provide, fromthe database via the Internet, the carrier availability data from the atleast one registered carrier to the application executing on the usercomputing device and receive, from the application via the Internet, aselection of a selected carrier from among the at least one registeredcarrier based on the carrier availability data; receive, in response toa query via the Internet to the selected carrier to accept delivery ofthe selected item from the selected pick-up location to the user, adelivery acceptance from the selected carrier; transmit, in response toreceiving the delivery acceptance from the selected carrier, a deliverytask to the selected carrier wherein the delivery task includes theselected pick-up location, a selected item identifier, and a deliverylocation; transmit, via a payment network, an authorization requestmessage from the merchant computing device to an issuer computing deviceassociated with an issuer of a payment account of the user, wherein theauthorization request message i) requests authorization for a paymenttransaction for the selected item that includes an item price and adelivery fee, and ii) is formatted according to a proprietarycommunications standard promulgated by the payment network for theexchange of financial transaction data between financial institutionsthat are members of the payment network; receive, via the paymentnetwork, an authorization response message from the issuer computingdevice authorizing the payment transaction; and in response to theauthorization of the payment transaction, credit, via the paymentnetwork, the item price to the account of the merchant and the deliveryfee to an account of the selected carrier.
 2. The ODE computing deviceof claim 1, wherein the carrier availability data from the at least oneregistered carrier includes at least one of a carrier identifier,available delivery days, available delivery times, minimum length oftrip, maximum length of trip, a delivery fee, a delivery vehicle type, adelivery vehicle identifier, a GPS identifier, and a delivery vehicledriver identifier.
 3. The ODE computing device of claim 1, wherein theitem data further includes at least one of an image of the item, adescription of the item, the item price, an estimated item price, and anitem identifier.
 4. The ODE computing device of claim 1, wherein saidprocessor is further programmed to receive, in response to the query viathe Internet to the selected carrier to accept delivery of the selecteditem from the selected pick-up location to the user, a delivery declinefrom an initially selected carrier and receive, from the application viathe Internet, a different carrier from among the at least one registeredcarrier to be selected as the selected carrier.
 5. The ODE computingdevice of claim 1, wherein said processor is further programmed toupdate, in response to receiving the delivery acceptance from theselected carrier, the item data and the carrier availability data of theselected carrier stored in the database based on the delivery tasktransmitted to the selected carrier.
 6. The ODE computing device ofclaim 1, wherein said processor is further programmed to transmitdelivery data to the user that includes at least one of a carrieridentifier, an estimated delivery time, an estimated delivery timerange, a delivery vehicle type, a delivery vehicle identifier, a GPSidentifier, and a delivery vehicle driver identifier.
 7. The ODEcomputing device of claim 1, wherein said processor is furtherprogrammed to, prior to processing the payment transaction, receive adelivery confirmation for the selected item and wherein the deliveryconfirmation is received from at least one of the selected carrier andthe user.
 8. A method for providing an on-demand ecosystem, said methodperformed using an on-demand ecosystem computing device including aprocessor in communication with a memory, said method comprising:receiving, via the Internet, item data from a merchant computing deviceof a registered merchant, wherein the item data includes one or morepick-up locations; receiving, via the Internet, carrier availabilitydata from at least one carrier computing device corresponding to atleast one registered carrier, the carrier availability data identifyinga local geographic area within which the at least one carrier delivers;storing, in a database, the item data and the carrier availability data;causing to be displayed, via Internet communication with an applicationexecuting on a user computing device, a searchable interface to a userthat enables the user to search the database for item data from theregistered merchant; receiving, via the Internet from the applicationexecuting on the user computing device, a selected item from the uservia the searchable interface, wherein the selected item is offered forsale by the registered merchant and includes a selected pick-uplocation, wherein the selected item is to be delivered to the user fromthe selected pick-up location; determining whether the registeredmerchant has selected to deliver the selected item to the user, wherein:when the registered merchant has selected to deliver the selected item,providing, from the database via the Internet, the carrier availabilitydata from the at least one registered carrier to the merchant computingdevice of the registered merchant and receiving, via the Internet fromthe merchant computing device, a selection of a selected carrier fromamong the at least one registered carrier based on the carrieravailability data; and when the registered merchant has not selected todeliver the selected item, providing, from the database via theInternet, the carrier availability data from the at least one registeredcarrier to the application executing on the user computing device andreceiving, from the application via the Internet, a selection of aselected carrier from among the at least one registered carrier based onthe carrier availability data; receiving, in response to querying theselected carrier via the Internet to accept delivery of the selecteditem from the selected pick-up location to the user, a deliveryacceptance from the selected carrier; transmitting, in response toreceiving the delivery acceptance from the selected carrier, a deliverytask to the selected carrier wherein the delivery task includes theselected pick-up location, a selected item identifier, and a deliverylocation; transmitting, via a payment network, an authorization requestmessage from the merchant computing device to an issuer computing deviceassociated with an issuer of a payment account of the user, wherein theauthorization request message i) requests authorization for a paymenttransaction for the selected item that includes an item price and adelivery fee, and ii) is formatted according to a proprietarycommunications standard promulgated by the payment network for theexchange of financial transaction data between financial institutionsthat are members of the payment network; receiving, via the paymentnetwork, an authorization response message from the issuer computingdevice authorizing the payment transaction; and in response to theauthorization of the payment transaction: when the registered merchanthas selected to deliver the selected item, crediting, via the paymentnetwork, the item price and the delivery fee to an account of themerchant; and when the registered merchant has selected not to deliverthe selected item, crediting, via the payment network, the item price tothe account of the merchant and the delivery fee to an account of theselected carrier.
 9. The method of claim 8, wherein receiving thecarrier availability data from the at least one registered carrierincludes receiving at least one of a carrier identifier, availabledelivery days, available delivery times, minimum length of trip, maximumlength of trip, a delivery fee, a delivery vehicle type, a deliveryvehicle identifier, a GPS identifier, and a delivery vehicle driveridentifier.
 10. The method of claim 8, wherein receiving item datafurther includes receiving at least one of an image of the item, adescription of the item, the item price, an estimated item price, and anitem identifier.
 11. The method of claim 8, further comprisingreceiving, in response to querying the selected carrier via the Internetto accept delivery of the selected item from the selected pick-uplocation to the user, a delivery decline from an initially selectedcarrier and allowing a different carrier from among the at least oneregistered carrier to be selected as the selected carrier.
 12. Themethod of claim 8, further comprising updating the carrier availabilitydata of the selected carrier based on the delivery task transmitted tothe selected carrier.
 13. The method of claim 8, further comprisingtransmitting delivery data to the user that includes at least one of acarrier identifier, an estimated delivery time, an estimated deliverytime range, a delivery vehicle type, a delivery vehicle identifier, aGPS identifier, and a delivery vehicle driver identifier.
 14. The methodof claim 8, further comprising, prior to processing the paymenttransaction, receiving a delivery confirmation for the selected item,wherein the delivery confirmation is received from at least one of theselected carrier and the user.
 15. A non-transitory computer-readablestorage medium having computer-executable instructions embodied thereon,wherein when executed by an on-demand ecosystem (ODE) computing deviceincluding at least one processor coupled to a memory, thecomputer-executable instructions cause the ODE computing device to:receive, via the Internet, item data from a merchant computing device ofa registered merchant, wherein the item data includes one or morepick-up locations; receive, via the Internet, carrier availability datafrom at least one carrier computing device corresponding to at least oneregistered carrier, the carrier availability data identifying a localgeographic area within which the at least one carrier delivers; store,in a database, the item data and the carrier availability data; cause tobe displayed, via Internet communication with an application executingon a user computing device, a searchable interface to a user thatenables the user to search the database for item data from theregistered merchant; receive, via the Internet from the applicationexecuting on the user computing device, a selected item from the uservia the searchable interface, wherein the selected item is offered forsale by the registered merchant and includes a selected pick-uplocation, wherein the selected item is to be delivered to the user fromthe selected pick-up location; determine whether the registered merchanthas selected to deliver the selected item to the user, wherein: when theregistered merchant has selected to deliver the selected item, provide,from the database via the Internet, the carrier availability data fromthe at least one registered carrier to the merchant computing device ofthe registered merchant and receive, via the Internet from the merchantcomputing device, a selection of a selected carrier from among the atleast one registered carrier based on the carrier availability data; andwhen the registered merchant has not selected to deliver the selecteditem, provide, from the database via the Internet, the carrieravailability data from the at least one registered carrier to theapplication executing on the user computing device and receive, from theapplication via the Internet, a selection of a selected carrier fromamong the at least one registered carrier based on the carrieravailability data; and receive, in response to a query via the Internetto the selected carrier to accept delivery of the selected item from theselected pick-up location to the user, a delivery acceptance from theselected carrier; transmit, in response to receiving the deliveryacceptance from the selected carrier, a delivery task to the selectedcarrier wherein the delivery task includes the selected pick-uplocation, a selected item identifier, and a delivery location; transmit,via a payment network, an authorization request message from themerchant computing device to an issuer computing device associated withan issuer of a payment account of the user, wherein the authorizationrequest message i) requests authorization for a payment transaction forthe selected item that includes an item price and a delivery fee, andii) is formatted according to a proprietary communications standardpromulgated by the payment network for the exchange of financialtransaction data between financial institutions that are members of thepayment network; receive, via the payment network, an authorizationresponse message from the issuer computing device authorizing thepayment transaction; and in response to the authorization of the paymenttransaction: when the registered merchant has selected to deliver theselected item, credit, via the payment network, the item price and thedelivery fee to an account of the merchant; and when the registeredmerchant has selected not to deliver the selected item, credit, via thepayment network, the item price to the account of the merchant and thedelivery fee to an account of the selected carrier.